home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / misc / dspice0s / load.c < prev    next >
C/C++ Source or Header  |  1992-11-21  |  31KB  |  951 lines

  1. /* load.f -- translated by f2c (version of 3 February 1990  3:36:42).
  2.    You must link the resulting object file with the libraries:
  3.     -lF77 -lI77 -lm -lc   (in that order)
  4. */
  5.  
  6. #include "f2c.h"
  7.  
  8. /* Common Block Declarations */
  9.  
  10. struct {
  11.     integer ielmnt, isbckt, nsbckt, iunsat, nunsat, itemps, numtem, isens, 
  12.         nsens, ifour, nfour, ifield, icode, idelim, icolum, insize, 
  13.         junode, lsbkpt, numbkp, iorder, jmnode, iur, iuc, ilc, ilr, 
  14.         numoff, isr, nmoffc, iseq, iseq1, neqn, nodevs, ndiag, iswap, 
  15.         iequa, macins, lvnim1, lx0, lvn, lynl, lyu, lyl, lx1, lx2, lx3, 
  16.         lx4, lx5, lx6, lx7, ld0, ld1, ltd, imynl, imvn, lcvn, nsnod, 
  17.         nsmat, nsval, icnod, icmat, icval, loutpt, lpol, lzer, irswpf, 
  18.         irswpr, icswpf, icswpr, irpt, jcpt, irowno, jcolno, nttbr, nttar, 
  19.         lvntmp;
  20. } tabinf_;
  21.  
  22. #define tabinf_1 tabinf_
  23.  
  24. struct {
  25.     integer locate[50], jelcnt[50], nunods, ncnods, numnod, nstop, nut, nlt, 
  26.         nxtrm, ndist, ntlin, ibr, numvs, numalt, numcyc;
  27. } cirdat_;
  28.  
  29. #define cirdat_1 cirdat_
  30.  
  31. struct {
  32.     doublereal omega, time, delta, delold[7], ag[7], vt, xni, egfet, xmu, 
  33.         sfactr;
  34.     integer mode, modedc, icalc, initf, method, iord, maxord, noncon, iterno, 
  35.         itemno, nosolv, modac, ipiv, ivmflg, ipostp, iscrch, iofile;
  36. } status_;
  37.  
  38. #define status_1 status_
  39.  
  40. struct {
  41.     doublereal atime, aprog[3], adate, atitle[10], defl, defw, defad, defas, 
  42.         rstats[50];
  43.     integer iwidth, lwidth, nopage;
  44. } miscel_;
  45.  
  46. #define miscel_1 miscel_
  47.  
  48. struct {
  49.     integer iprnta, iprntl, iprntm, iprntn, iprnto, limtim, limpts, lvlcod, 
  50.         lvltim, itl1, itl2, itl3, itl4, itl5, itl6, igoof, nogo, keof;
  51. } flags_;
  52.  
  53. #define flags_1 flags_
  54.  
  55. struct {
  56.     doublereal twopi, xlog2, xlog10, root2, rad, boltz, charge, ctok, gmin, 
  57.         reltol, abstol, vntol, trtol, chgtol, eps0, epssil, epsox, pivtol,
  58.          pivrel;
  59. } knstnt_;
  60.  
  61. #define knstnt_1 knstnt_
  62.  
  63. struct {
  64.     doublereal value[200000];
  65. } blank_;
  66.  
  67. #define blank_1 blank_
  68.  
  69. /* Table of constant values */
  70.  
  71. static integer c_n1 = -1;
  72. static integer c__1 = 1;
  73. static integer c__0 = 0;
  74.  
  75. /*<       subroutine load >*/
  76. /* Subroutine */ int load_()
  77. {
  78.     /* System generated locals */
  79.     integer i_1, i_2;
  80.  
  81.     /* Local variables */
  82. #define ccap ((doublereal *)&blank_1 + 1)
  83.     static doublereal cind;
  84. #define find ((doublereal *)&blank_1)
  85. #define qcap ((doublereal *)&blank_1)
  86.     extern /* Subroutine */ int jfet_();
  87.     static doublereal vcap;
  88.     static integer node;
  89. #define vind ((doublereal *)&blank_1 + 1)
  90.     static integer locv, locy, loct, iptr, node1, node2, node3, node4, loct1, 
  91.         loct2, iptr1, iptr2;
  92.     extern /* Subroutine */ int zero8_();
  93.     static doublereal g;
  94.     static integer i;
  95.     extern /* Subroutine */ int diode_();
  96.     static integer lcoef, ncoef, ipoly, ntest;
  97.     static doublereal t1, t2, z0, y0;
  98.     extern /* Subroutine */ int intgr8_();
  99. #define nodplc ((integer *)&blank_1)
  100. #define cvalue ((complex *)&blank_1)
  101.     extern /* Subroutine */ int second_(), sizmem_(), evpoly_();
  102.     static doublereal ceq;
  103.     static integer nl1, nl2;
  104.     extern /* Subroutine */ int nlcsrc_();
  105.     static integer loc;
  106.     static doublereal geq;
  107.     extern /* Subroutine */ int bjt_(), mosfet_();
  108.     static doublereal val;
  109.     static integer nic;
  110.     static doublereal req, veq;
  111.     static integer ibr1, ibr2;
  112.  
  113. /*<       implicit double precision (a-h,o-z) >*/
  114.  
  115. /*     this routine zeroes-out and then loads the coefficient matrix. */
  116. /* the active devices and the controlled sources are loaded by separate */
  117.  
  118. /* subroutines. */
  119.  
  120. /* spice version 2g.6  sccsid=tabinf 3/15/83 */
  121. /*<       common /tabinf/ ielmnt,isbckt,nsbckt,iunsat,nunsat,itemps,numtem, >*/
  122. /*<      1   isens,nsens,ifour,nfour,ifield,icode,idelim,icolum,insize, >*/
  123. /*<      2   junode,lsbkpt,numbkp,iorder,jmnode,iur,iuc,ilc,ilr,numoff,isr, >*/
  124. /*<      3   nmoffc,iseq,iseq1,neqn,nodevs,ndiag,iswap,iequa,macins,lvnim1, >*/
  125. /*<      4   lx0,lvn,lynl,lyu,lyl,lx1,lx2,lx3,lx4,lx5,lx6,lx7,ld0,ld1,ltd, >*/
  126. /*<      5   imynl,imvn,lcvn,nsnod,nsmat,nsval,icnod,icmat,icval, >*/
  127. /*<      6   loutpt,lpol,lzer,irswpf,irswpr,icswpf,icswpr,irpt,jcpt, >*/
  128. /*<      7   irowno,jcolno,nttbr,nttar,lvntmp >*/
  129. /* spice version 2g.6  sccsid=cirdat 3/15/83 */
  130. /*<       common /cirdat/ locate(50),jelcnt(50),nunods,ncnods,numnod,nstop, >*/
  131. /*<      1   nut,nlt,nxtrm,ndist,ntlin,ibr,numvs,numalt,numcyc >*/
  132. /* spice version 2g.6  sccsid=status 3/15/83 */
  133. /*<       common /status/ omega,time,delta,delold(7),ag(7),vt,xni,egfet, >*/
  134. /*<      1   xmu,sfactr,mode,modedc,icalc,initf,method,iord,maxord,noncon, >*/
  135. /*<      2   iterno,itemno,nosolv,modac,ipiv,ivmflg,ipostp,iscrch,iofile >*/
  136. /* spice version 2g.6  sccsid=miscel 3/15/83 */
  137. /*<       common /miscel/ atime,aprog(3),adate,atitle(10),defl,defw,defad, >*/
  138. /*<      1  defas,rstats(50),iwidth,lwidth,nopage >*/
  139. /* spice version 2g.6  sccsid=flags 3/15/83 */
  140. /*<       common /flags/ iprnta,iprntl,iprntm,iprntn,iprnto,limtim,limpts, >*/
  141. /*<      1   lvlcod,lvltim,itl1,itl2,itl3,itl4,itl5,itl6,igoof,nogo,keof >*/
  142. /* spice version 2g.6  sccsid=knstnt 3/15/83 */
  143. /*<       common /knstnt/ twopi,xlog2,xlog10,root2,rad,boltz,charge,ctok, >*/
  144. /*<      1   gmin,reltol,abstol,vntol,trtol,chgtol,eps0,epssil,epsox, >*/
  145. /*<      2   pivtol,pivrel >*/
  146. /* spice version 2g.6  sccsid=blank 3/15/83 */
  147. /*<       common /blank/ value(200000) >*/
  148. /*<       integer nodplc(64) >*/
  149. /*<       complex cvalue(32) >*/
  150. /*<       equivalence (value(1),nodplc(1),cvalue(1)) >*/
  151.  
  152.  
  153. /*<       dimension qcap(1),ccap(1) >*/
  154. /*<       equivalence (qcap(1),value(1)),(ccap(1),value(2)) >*/
  155. /*<       dimension find(1),vind(1) >*/
  156. /*<       equivalence (find(1),value(1)),(vind(1),value(2)) >*/
  157.  
  158. /*<       call second(t1) >*/
  159.     second_(&t1);
  160.  
  161. /*  zero y matrix and current vector */
  162.  
  163. /*<       call zero8(value(lvn+1),nstop+nttbr) >*/
  164.     i_1 = cirdat_1.nstop + tabinf_1.nttbr;
  165.     zero8_(&blank_1.value[tabinf_1.lvn], &i_1);
  166.  
  167. /*  resistors */
  168.  
  169. /*<       loc=locate(1) >*/
  170.     loc = cirdat_1.locate[0];
  171. /*<    20 if ((loc.eq.0).or.(nodplc(loc+8).ne.0)) go to 30 >*/
  172. L20:
  173.     if (loc == 0 || nodplc[loc + 7] != 0) {
  174.     goto L30;
  175.     }
  176. /*<       locv=nodplc(loc+1) >*/
  177.     locv = nodplc[loc];
  178. /*<       val=value(locv+1) >*/
  179.     val = blank_1.value[locv];
  180. /*<       locy=lvn+nodplc(loc+6) >*/
  181.     locy = tabinf_1.lvn + nodplc[loc + 5];
  182. /*<       value(locy)=value(locy)+val >*/
  183.     blank_1.value[locy - 1] += val;
  184. /*<       locy=lvn+nodplc(loc+7) >*/
  185.     locy = tabinf_1.lvn + nodplc[loc + 6];
  186. /*<       value(locy)=value(locy)+val >*/
  187.     blank_1.value[locy - 1] += val;
  188. /*<       locy=lvn+nodplc(loc+4) >*/
  189.     locy = tabinf_1.lvn + nodplc[loc + 3];
  190. /*<       value(locy)=value(locy)-val >*/
  191.     blank_1.value[locy - 1] -= val;
  192. /*<       locy=lvn+nodplc(loc+5) >*/
  193.     locy = tabinf_1.lvn + nodplc[loc + 4];
  194. /*<       value(locy)=value(locy)-val >*/
  195.     blank_1.value[locy - 1] -= val;
  196. /*<       loc=nodplc(loc) >*/
  197.     loc = nodplc[loc - 1];
  198. /*<       go to 20 >*/
  199.     goto L20;
  200.  
  201. /*  capacitors */
  202.  
  203. /*<    30 loc=locate(2) >*/
  204. L30:
  205.     loc = cirdat_1.locate[1];
  206. /*<       if ((mode.eq.1).and.(modedc.ne.2)) go to 100 >*/
  207.     if (status_1.mode == 1 && status_1.modedc != 2) {
  208.     goto L100;
  209.     }
  210. /*<    40 if ((loc.eq.0).or.(nodplc(loc+12).ne.0)) go to 100 >*/
  211. L40:
  212.     if (loc == 0 || nodplc[loc + 11] != 0) {
  213.     goto L100;
  214.     }
  215. /*<       locv=nodplc(loc+1) >*/
  216.     locv = nodplc[loc];
  217. /*<       node1=nodplc(loc+2) >*/
  218.     node1 = nodplc[loc + 1];
  219. /*<       node2=nodplc(loc+3) >*/
  220.     node2 = nodplc[loc + 2];
  221. /*<       loct=nodplc(loc+8) >*/
  222.     loct = nodplc[loc + 7];
  223. /*<       ipoly=nodplc(loc+4) >*/
  224.     ipoly = nodplc[loc + 3];
  225. /*<       if (ipoly.eq.1) go to 43 >*/
  226.     if (ipoly == 1) {
  227.     goto L43;
  228.     }
  229. /*<       lcoef=nodplc(loc+7) >*/
  230.     lcoef = nodplc[loc + 6];
  231. /*<       call sizmem(nodplc(loc+7),ncoef) >*/
  232.     sizmem_(&nodplc[loc + 6], &ncoef);
  233. /*<    43 vcap=value(locv+2) >*/
  234. L43:
  235.     vcap = blank_1.value[locv + 1];
  236. /*<       if ((mode.eq.1).and.(initf.eq.2)) go to 45 >*/
  237.     if (status_1.mode == 1 && status_1.initf == 2) {
  238.     goto L45;
  239.     }
  240. /*<       if ((nosolv.ne.0).and.(initf.eq.5)) go to 45 >*/
  241.     if (status_1.nosolv != 0 && status_1.initf == 5) {
  242.     goto L45;
  243.     }
  244. /*<       vcap=value(lvnim1+node1)-value(lvnim1+node2) >*/
  245.     vcap = blank_1.value[tabinf_1.lvnim1 + node1 - 1] - blank_1.value[
  246.         tabinf_1.lvnim1 + node2 - 1];
  247. /*<    45 value(locv+3)=vcap >*/
  248. L45:
  249.     blank_1.value[locv + 2] = vcap;
  250. /*<       if (mode.eq.1) go to 60 >*/
  251.     if (status_1.mode == 1) {
  252.     goto L60;
  253.     }
  254. /*<    47 if (initf.ne.6) go to 50 >*/
  255. /* L47: */
  256.     if (status_1.initf != 6) {
  257.     goto L50;
  258.     }
  259. /*<       qcap(lx0+loct)=qcap(lx1+loct) >*/
  260.     qcap[tabinf_1.lx0 + loct - 1] = qcap[tabinf_1.lx1 + loct - 1];
  261. /*<       go to 60 >*/
  262.     goto L60;
  263. /*<    50 if (ipoly.eq.0) go to 53 >*/
  264. L50:
  265.     if (ipoly == 0) {
  266.     goto L53;
  267.     }
  268. /*<       qcap(lx0+loct)=value(locv+1)*vcap >*/
  269.     qcap[tabinf_1.lx0 + loct - 1] = blank_1.value[locv] * vcap;
  270. /*<       if (initf.ne.5) go to 60 >*/
  271.     if (status_1.initf != 5) {
  272.     goto L60;
  273.     }
  274. /*<       if (nosolv.ne.0) qcap(lx0+loct)=value(locv+1)*value(locv+2) >*/
  275.     if (status_1.nosolv != 0) {
  276.     qcap[tabinf_1.lx0 + loct - 1] = blank_1.value[locv] * blank_1.value[
  277.         locv + 1];
  278.     }
  279. /*<       qcap(lx1+loct)=qcap(lx0+loct) >*/
  280.     qcap[tabinf_1.lx1 + loct - 1] = qcap[tabinf_1.lx0 + loct - 1];
  281. /*<       go to 60 >*/
  282.     goto L60;
  283. /*<    53 call evpoly(qcap(lx0+loct),-1,lcoef,ncoef,locv+2,1,loc+8) >*/
  284. L53:
  285.     i_1 = locv + 2;
  286.     i_2 = loc + 8;
  287.     evpoly_(&qcap[tabinf_1.lx0 + loct - 1], &c_n1, &lcoef, &ncoef, &i_1, &
  288.         c__1, &i_2);
  289. /*<       if (initf.ne.5) go to 60 >*/
  290.     if (status_1.initf != 5) {
  291.     goto L60;
  292.     }
  293. /*<       if (nosolv.eq.0) go to 55 >*/
  294.     if (status_1.nosolv == 0) {
  295.     goto L55;
  296.     }
  297. /*<       vcap=value(locv+2) >*/
  298.     vcap = blank_1.value[locv + 1];
  299. /*<       value(locv+3)=vcap >*/
  300.     blank_1.value[locv + 2] = vcap;
  301. /*<       call evpoly(qcap(lx0+loct),-1,lcoef,ncoef,locv+2,1,loc+8) >*/
  302.     i_1 = locv + 2;
  303.     i_2 = loc + 8;
  304.     evpoly_(&qcap[tabinf_1.lx0 + loct - 1], &c_n1, &lcoef, &ncoef, &i_1, &
  305.         c__1, &i_2);
  306. /*<    55 qcap(lx1+loct)=qcap(lx0+loct) >*/
  307. L55:
  308.     qcap[tabinf_1.lx1 + loct - 1] = qcap[tabinf_1.lx0 + loct - 1];
  309. /*<    60 if (ipoly.eq.1) go to 62 >*/
  310. L60:
  311.     if (ipoly == 1) {
  312.     goto L62;
  313.     }
  314. /*<       call evpoly(value(locv+1),0,lcoef,ncoef,locv+2,1,loc+8) >*/
  315.     i_1 = locv + 2;
  316.     i_2 = loc + 8;
  317.     evpoly_(&blank_1.value[locv], &c__0, &lcoef, &ncoef, &i_1, &c__1, &i_2);
  318. /*<    62 if (mode.eq.1) go to 90 >*/
  319. L62:
  320.     if (status_1.mode == 1) {
  321.     goto L90;
  322.     }
  323. /*<       call intgr8(geq,ceq,value(locv+1),loct) >*/
  324.     intgr8_(&geq, &ceq, &blank_1.value[locv], &loct);
  325. /*<       if (ipoly.eq.1) go to 65 >*/
  326.     if (ipoly == 1) {
  327.     goto L65;
  328.     }
  329. /*<       ceq=ceq-geq*vcap+ag(1)*qcap(lx0+loct) >*/
  330.     ceq = ceq - geq * vcap + status_1.ag[0] * qcap[tabinf_1.lx0 + loct - 1];
  331. /*<    65 if(initf.ne.5) go to 70 >*/
  332. L65:
  333.     if (status_1.initf != 5) {
  334.     goto L70;
  335.     }
  336. /*<       ccap(lx1+loct)=ccap(lx0+loct) >*/
  337.     ccap[tabinf_1.lx1 + loct - 1] = ccap[tabinf_1.lx0 + loct - 1];
  338. /*<    70 locy=lvn+nodplc(loc+10) >*/
  339. L70:
  340.     locy = tabinf_1.lvn + nodplc[loc + 9];
  341. /*<       value(locy)=value(locy)+geq >*/
  342.     blank_1.value[locy - 1] += geq;
  343. /*<       locy=lvn+nodplc(loc+11) >*/
  344.     locy = tabinf_1.lvn + nodplc[loc + 10];
  345. /*<       value(locy)=value(locy)+geq >*/
  346.     blank_1.value[locy - 1] += geq;
  347. /*<       locy=lvn+nodplc(loc+5) >*/
  348.     locy = tabinf_1.lvn + nodplc[loc + 4];
  349. /*<       value(locy)=value(locy)-geq >*/
  350.     blank_1.value[locy - 1] -= geq;
  351. /*<       locy=lvn+nodplc(loc+6) >*/
  352.     locy = tabinf_1.lvn + nodplc[loc + 5];
  353. /*<       value(locy)=value(locy)-geq >*/
  354.     blank_1.value[locy - 1] -= geq;
  355. /*<       value(lvn+node1)=value(lvn+node1)-ceq >*/
  356.     blank_1.value[tabinf_1.lvn + node1 - 1] -= ceq;
  357. /*<       value(lvn+node2)=value(lvn+node2)+ceq >*/
  358.     blank_1.value[tabinf_1.lvn + node2 - 1] += ceq;
  359. /*<    90 loc=nodplc(loc) >*/
  360. L90:
  361.     loc = nodplc[loc - 1];
  362. /*<       go to 40 >*/
  363.     goto L40;
  364.  
  365. /*  inductors */
  366.  
  367. /*<   100 if (jelcnt(3).eq.0) go to 400 >*/
  368. L100:
  369.     if (cirdat_1.jelcnt[2] == 0) {
  370.     goto L400;
  371.     }
  372. /*<       if (mode.eq.1) go to 150 >*/
  373.     if (status_1.mode == 1) {
  374.     goto L150;
  375.     }
  376. /*<       if (initf.eq.6) go to 150 >*/
  377.     if (status_1.initf == 6) {
  378.     goto L150;
  379.     }
  380. /*<       loc=locate(3) >*/
  381.     loc = cirdat_1.locate[2];
  382. /*<   110 if ((loc.eq.0).or.(nodplc(loc+14).ne.0)) go to 120 >*/
  383. L110:
  384.     if (loc == 0 || nodplc[loc + 13] != 0) {
  385.     goto L120;
  386.     }
  387. /*<       locv=nodplc(loc+1) >*/
  388.     locv = nodplc[loc];
  389. /*<       iptr=nodplc(loc+5) >*/
  390.     iptr = nodplc[loc + 4];
  391. /*<       loct=nodplc(loc+11) >*/
  392.     loct = nodplc[loc + 10];
  393. /*<       ipoly=nodplc(loc+4) >*/
  394.     ipoly = nodplc[loc + 3];
  395. /*<       if (ipoly.eq.0) go to 115 >*/
  396.     if (ipoly == 0) {
  397.     goto L115;
  398.     }
  399. /*<       find(lx0+loct)=value(locv+1)*value(lvnim1+iptr) >*/
  400.     find[tabinf_1.lx0 + loct - 1] = blank_1.value[locv] * blank_1.value[
  401.         tabinf_1.lvnim1 + iptr - 1];
  402. /*<       if ((initf.eq.5).and.(nosolv.ne.0)) >*/
  403. /*<      1   find(lx0+loct)=value(locv+1)*value(locv+2) >*/
  404.     if (status_1.initf == 5 && status_1.nosolv != 0) {
  405.     find[tabinf_1.lx0 + loct - 1] = blank_1.value[locv] * blank_1.value[
  406.         locv + 1];
  407.     }
  408. /*<       go to 118 >*/
  409.     goto L118;
  410. /*<   115 lcoef=nodplc(loc+10) >*/
  411. L115:
  412.     lcoef = nodplc[loc + 9];
  413. /*<       call sizmem(nodplc(loc+10),ncoef) >*/
  414.     sizmem_(&nodplc[loc + 9], &ncoef);
  415. /*<       cind=value(lvnim1+iptr) >*/
  416.     cind = blank_1.value[tabinf_1.lvnim1 + iptr - 1];
  417. /*<       if ((initf.eq.5).and.(nosolv.ne.0)) cind=value(locv+2) >*/
  418.     if (status_1.initf == 5 && status_1.nosolv != 0) {
  419.     cind = blank_1.value[locv + 1];
  420.     }
  421. /*<       value(locv+3)=cind >*/
  422.     blank_1.value[locv + 2] = cind;
  423. /*<       call evpoly(find(lx0+loct),-1,lcoef,ncoef,locv+2,1,loc+11) >*/
  424.     i_1 = locv + 2;
  425.     i_2 = loc + 11;
  426.     evpoly_(&find[tabinf_1.lx0 + loct - 1], &c_n1, &lcoef, &ncoef, &i_1, &
  427.         c__1, &i_2);
  428. /*<   118 loc=nodplc(loc) >*/
  429. L118:
  430.     loc = nodplc[loc - 1];
  431. /*<       go to 110 >*/
  432.     goto L110;
  433. /*<   120 loc=locate(4) >*/
  434. L120:
  435.     loc = cirdat_1.locate[3];
  436. /*<   130 if ((loc.eq.0).or.(nodplc(loc+6).ne.0)) go to 150 >*/
  437. L130:
  438.     if (loc == 0 || nodplc[loc + 5] != 0) {
  439.     goto L150;
  440.     }
  441. /*<       locv=nodplc(loc+1) >*/
  442.     locv = nodplc[loc];
  443. /*<       nl1=nodplc(loc+2) >*/
  444.     nl1 = nodplc[loc + 1];
  445. /*<       nl2=nodplc(loc+3) >*/
  446.     nl2 = nodplc[loc + 2];
  447. /*<       iptr1=nodplc(nl1+5) >*/
  448.     iptr1 = nodplc[nl1 + 4];
  449. /*<       iptr2=nodplc(nl2+5) >*/
  450.     iptr2 = nodplc[nl2 + 4];
  451. /*<       loct1=nodplc(nl1+11) >*/
  452.     loct1 = nodplc[nl1 + 10];
  453. /*<       loct2=nodplc(nl2+11) >*/
  454.     loct2 = nodplc[nl2 + 10];
  455. /*<       find(lx0+loct1)=find(lx0+loct1)+value(locv+1)*value(lvnim1+iptr2) >*/
  456.     find[tabinf_1.lx0 + loct1 - 1] += blank_1.value[locv] * blank_1.value[
  457.         tabinf_1.lvnim1 + iptr2 - 1];
  458. /*<       find(lx0+loct2)=find(lx0+loct2)+value(locv+1)*value(lvnim1+iptr1) >*/
  459.     find[tabinf_1.lx0 + loct2 - 1] += blank_1.value[locv] * blank_1.value[
  460.         tabinf_1.lvnim1 + iptr1 - 1];
  461. /*<       loc=nodplc(loc) >*/
  462.     loc = nodplc[loc - 1];
  463. /*<       go to 130 >*/
  464.     goto L130;
  465. /*<   150 loc=locate(3) >*/
  466. L150:
  467.     loc = cirdat_1.locate[2];
  468. /*<   160 if ((loc.eq.0).or.(nodplc(loc+14).ne.0)) go to 300 >*/
  469. L160:
  470.     if (loc == 0 || nodplc[loc + 13] != 0) {
  471.     goto L300;
  472.     }
  473. /*<       locv=nodplc(loc+1) >*/
  474.     locv = nodplc[loc];
  475. /*<       iptr=nodplc(loc+5) >*/
  476.     iptr = nodplc[loc + 4];
  477. /*<       loct=nodplc(loc+11) >*/
  478.     loct = nodplc[loc + 10];
  479. /*<       ipoly=nodplc(loc+4) >*/
  480.     ipoly = nodplc[loc + 3];
  481. /*<       if (ipoly.eq.1) go to 170 >*/
  482.     if (ipoly == 1) {
  483.     goto L170;
  484.     }
  485. /*<       lcoef=nodplc(loc+10) >*/
  486.     lcoef = nodplc[loc + 9];
  487. /*<       call sizmem(nodplc(loc+10),ncoef) >*/
  488.     sizmem_(&nodplc[loc + 9], &ncoef);
  489. /*<   170 cind=value(lvnim1+iptr) >*/
  490. L170:
  491.     cind = blank_1.value[tabinf_1.lvnim1 + iptr - 1];
  492. /*<       if ((nosolv.ne.0).and.(initf.eq.5)) cind=value(locv+2) >*/
  493.     if (status_1.nosolv != 0 && status_1.initf == 5) {
  494.     cind = blank_1.value[locv + 1];
  495.     }
  496. /*<       value(locv+3)=cind >*/
  497.     blank_1.value[locv + 2] = cind;
  498. /*<   180 if (mode.ne.1) go to 200 >*/
  499. /* L180: */
  500.     if (status_1.mode != 1) {
  501.     goto L200;
  502.     }
  503. /*<       veq=0.0d0 >*/
  504.     veq = 0.;
  505. /*<       req=0.0d0 >*/
  506.     req = 0.;
  507. /*<       go to 210 >*/
  508.     goto L210;
  509. /*<   200 if (initf.ne.6) go to 205 >*/
  510. L200:
  511.     if (status_1.initf != 6) {
  512.     goto L205;
  513.     }
  514. /*<       find(lx0+loct)=find(lx1+loct) >*/
  515.     find[tabinf_1.lx0 + loct - 1] = find[tabinf_1.lx1 + loct - 1];
  516. /*<       go to 210 >*/
  517.     goto L210;
  518. /*<   205 if (initf.ne.5) go to 210 >*/
  519. L205:
  520.     if (status_1.initf != 5) {
  521.     goto L210;
  522.     }
  523. /*<       find(lx1+loct)=find(lx0+loct) >*/
  524.     find[tabinf_1.lx1 + loct - 1] = find[tabinf_1.lx0 + loct - 1];
  525. /*<   210 if (ipoly.eq.1) go to 220 >*/
  526. L210:
  527.     if (ipoly == 1) {
  528.     goto L220;
  529.     }
  530. /*<       call evpoly(value(locv+1),0,lcoef,ncoef,locv+2,1,loc+11) >*/
  531.     i_1 = locv + 2;
  532.     i_2 = loc + 11;
  533.     evpoly_(&blank_1.value[locv], &c__0, &lcoef, &ncoef, &i_1, &c__1, &i_2);
  534. /*<   220 if (mode.eq.1) go to 250 >*/
  535. L220:
  536.     if (status_1.mode == 1) {
  537.     goto L250;
  538.     }
  539. /*<       call intgr8(req,veq,value(locv+1),loct) >*/
  540.     intgr8_(&req, &veq, &blank_1.value[locv], &loct);
  541. /*<       if (ipoly.eq.1) go to 250 >*/
  542.     if (ipoly == 1) {
  543.     goto L250;
  544.     }
  545. /*<       veq=veq-req*cind+ag(1)*find(lx0+loct) >*/
  546.     veq = veq - req * cind + status_1.ag[0] * find[tabinf_1.lx0 + loct - 1];
  547. /*<   250 value(lvn+iptr)=veq >*/
  548. L250:
  549.     blank_1.value[tabinf_1.lvn + iptr - 1] = veq;
  550. /*<       if(initf.ne.5) go to 260 >*/
  551.     if (status_1.initf != 5) {
  552.     goto L260;
  553.     }
  554. /*<       vind(lx1+loct)=vind(lx0+loct) >*/
  555.     vind[tabinf_1.lx1 + loct - 1] = vind[tabinf_1.lx0 + loct - 1];
  556. /*<   260 locy=lvn+nodplc(loc+13) >*/
  557. L260:
  558.     locy = tabinf_1.lvn + nodplc[loc + 12];
  559. /*<       value(locy)=-req >*/
  560.     blank_1.value[locy - 1] = -req;
  561. /*<       locy=lvn+nodplc(loc+6) >*/
  562.     locy = tabinf_1.lvn + nodplc[loc + 5];
  563. /*<       value(locy)=1.0d0 >*/
  564.     blank_1.value[locy - 1] = 1.;
  565. /*<       locy=lvn+nodplc(loc+7) >*/
  566.     locy = tabinf_1.lvn + nodplc[loc + 6];
  567. /*<       value(locy)=-1.0d0 >*/
  568.     blank_1.value[locy - 1] = -1.;
  569. /*<       locy=lvn+nodplc(loc+8) >*/
  570.     locy = tabinf_1.lvn + nodplc[loc + 7];
  571. /*<       value(locy)=1.0d0 >*/
  572.     blank_1.value[locy - 1] = 1.;
  573. /*<       locy=lvn+nodplc(loc+9) >*/
  574.     locy = tabinf_1.lvn + nodplc[loc + 8];
  575. /*<       value(locy)=-1.0d0 >*/
  576.     blank_1.value[locy - 1] = -1.;
  577. /*<       loc=nodplc(loc) >*/
  578.     loc = nodplc[loc - 1];
  579. /*<       go to 160 >*/
  580.     goto L160;
  581.  
  582. /*  mutual inductances */
  583.  
  584. /*<   300 loc=locate(4) >*/
  585. L300:
  586.     loc = cirdat_1.locate[3];
  587. /*<   310 if ((loc.eq.0).or.(nodplc(loc+6).ne.0)) go to 400 >*/
  588. L310:
  589.     if (loc == 0 || nodplc[loc + 5] != 0) {
  590.     goto L400;
  591.     }
  592. /*<       locv=nodplc(loc+1) >*/
  593.     locv = nodplc[loc];
  594. /*<       req=ag(1)*value(locv+1) >*/
  595.     req = status_1.ag[0] * blank_1.value[locv];
  596. /*<       locy=lvn+nodplc(loc+4) >*/
  597.     locy = tabinf_1.lvn + nodplc[loc + 3];
  598. /*<       value(locy)=-req >*/
  599.     blank_1.value[locy - 1] = -req;
  600. /*<       locy=lvn+nodplc(loc+5) >*/
  601.     locy = tabinf_1.lvn + nodplc[loc + 4];
  602. /*<       value(locy)=-req >*/
  603.     blank_1.value[locy - 1] = -req;
  604. /*<       loc=nodplc(loc) >*/
  605.     loc = nodplc[loc - 1];
  606. /*<       go to 310 >*/
  607.     goto L310;
  608.  
  609. /*  nonlinear controlled sources */
  610.  
  611. /*<   400 call nlcsrc >*/
  612. L400:
  613.     nlcsrc_();
  614.  
  615. /*  voltage sources */
  616.  
  617. /*<       loc=locate(9) >*/
  618.     loc = cirdat_1.locate[8];
  619. /*<   610 if ((loc.eq.0).or.(nodplc(loc+11).ne.0)) go to 700 >*/
  620. L610:
  621.     if (loc == 0 || nodplc[loc + 10] != 0) {
  622.     goto L700;
  623.     }
  624. /*<       locv=nodplc(loc+1) >*/
  625.     locv = nodplc[loc];
  626. /*<       iptr=nodplc(loc+6) >*/
  627.     iptr = nodplc[loc + 5];
  628. /*<       value(lvn+iptr)=value(locv+1)*sfactr >*/
  629.     blank_1.value[tabinf_1.lvn + iptr - 1] = blank_1.value[locv] * 
  630.         status_1.sfactr;
  631. /*<       locy=lvn+nodplc(loc+7) >*/
  632.     locy = tabinf_1.lvn + nodplc[loc + 6];
  633. /*<       value(locy)=value(locy)+1.0d0 >*/
  634.     blank_1.value[locy - 1] += 1.;
  635. /*<       locy=lvn+nodplc(loc+8) >*/
  636.     locy = tabinf_1.lvn + nodplc[loc + 7];
  637. /*<       value(locy)=value(locy)-1.0d0 >*/
  638.     blank_1.value[locy - 1] += -1.;
  639. /*<       locy=lvn+nodplc(loc+9) >*/
  640.     locy = tabinf_1.lvn + nodplc[loc + 8];
  641. /*<       value(locy)=value(locy)+1.0d0 >*/
  642.     blank_1.value[locy - 1] += 1.;
  643. /*<       locy=lvn+nodplc(loc+10) >*/
  644.     locy = tabinf_1.lvn + nodplc[loc + 9];
  645. /*<       value(locy)=value(locy)-1.0d0 >*/
  646.     blank_1.value[locy - 1] += -1.;
  647. /*<       loc=nodplc(loc) >*/
  648.     loc = nodplc[loc - 1];
  649. /*<       go to 610 >*/
  650.     goto L610;
  651.  
  652. /*  current sources */
  653.  
  654. /*<   700 loc=locate(10) >*/
  655. L700:
  656.     loc = cirdat_1.locate[9];
  657. /*<   710 if ((loc.eq.0).or.(nodplc(loc+6).ne.0)) go to 800 >*/
  658. L710:
  659.     if (loc == 0 || nodplc[loc + 5] != 0) {
  660.     goto L800;
  661.     }
  662. /*<       locv=nodplc(loc+1) >*/
  663.     locv = nodplc[loc];
  664. /*<       node1=nodplc(loc+2) >*/
  665.     node1 = nodplc[loc + 1];
  666. /*<       node2=nodplc(loc+3) >*/
  667.     node2 = nodplc[loc + 2];
  668. /*<       val=value(locv+1)*sfactr >*/
  669.     val = blank_1.value[locv] * status_1.sfactr;
  670. /*<       value(lvn+node1)=value(lvn+node1)-val >*/
  671.     blank_1.value[tabinf_1.lvn + node1 - 1] -= val;
  672. /*<       value(lvn+node2)=value(lvn+node2)+val >*/
  673.     blank_1.value[tabinf_1.lvn + node2 - 1] += val;
  674. /*<       loc=nodplc(loc) >*/
  675.     loc = nodplc[loc - 1];
  676. /*<       go to 710 >*/
  677.     goto L710;
  678.  
  679. /*  call device model routines */
  680.  
  681. /*<   800 call diode >*/
  682. L800:
  683.     diode_();
  684. /*<       call bjt >*/
  685.     bjt_();
  686. /*<       call jfet >*/
  687.     jfet_();
  688. /*<       call mosfet >*/
  689.     mosfet_();
  690.  
  691. /*  transmission lines */
  692.  
  693. /*<       loc=locate(17) >*/
  694.     loc = cirdat_1.locate[16];
  695. /*<   910 if ((loc.eq.0).or.(nodplc(loc+33).ne.0)) go to 980 >*/
  696. L910:
  697.     if (loc == 0 || nodplc[loc + 32] != 0) {
  698.     goto L980;
  699.     }
  700. /*<       locv=nodplc(loc+1) >*/
  701.     locv = nodplc[loc];
  702. /*<       z0=value(locv+1) >*/
  703.     z0 = blank_1.value[locv];
  704. /*<       y0=1.0d0/z0 >*/
  705.     y0 = 1. / z0;
  706. /*<       node1=nodplc(loc+2) >*/
  707.     node1 = nodplc[loc + 1];
  708. /*<       node2=nodplc(loc+3) >*/
  709.     node2 = nodplc[loc + 2];
  710. /*<       node3=nodplc(loc+4) >*/
  711.     node3 = nodplc[loc + 3];
  712. /*<       node4=nodplc(loc+5) >*/
  713.     node4 = nodplc[loc + 4];
  714. /*<       ibr1=nodplc(loc+8) >*/
  715.     ibr1 = nodplc[loc + 7];
  716. /*<       ibr2=nodplc(loc+9) >*/
  717.     ibr2 = nodplc[loc + 8];
  718. /*<       locy=lvn+nodplc(loc+10) >*/
  719.     locy = tabinf_1.lvn + nodplc[loc + 9];
  720. /*<       value(locy)=value(locy)+y0 >*/
  721.     blank_1.value[locy - 1] += y0;
  722. /*<       locy=lvn+nodplc(loc+11) >*/
  723.     locy = tabinf_1.lvn + nodplc[loc + 10];
  724. /*<       value(locy)=-y0 >*/
  725.     blank_1.value[locy - 1] = -y0;
  726. /*<       locy=lvn+nodplc(loc+12) >*/
  727.     locy = tabinf_1.lvn + nodplc[loc + 11];
  728. /*<       value(locy)=-1.0d0 >*/
  729.     blank_1.value[locy - 1] = -1.;
  730. /*<       locy=lvn+nodplc(loc+13) >*/
  731.     locy = tabinf_1.lvn + nodplc[loc + 12];
  732. /*<       value(locy)=value(locy)+y0 >*/
  733.     blank_1.value[locy - 1] += y0;
  734. /*<       locy=lvn+nodplc(loc+14) >*/
  735.     locy = tabinf_1.lvn + nodplc[loc + 13];
  736. /*<       value(locy)=-1.0d0 >*/
  737.     blank_1.value[locy - 1] = -1.;
  738. /*<       locy=lvn+nodplc(loc+15) >*/
  739.     locy = tabinf_1.lvn + nodplc[loc + 14];
  740. /*<       value(locy)=-y0 >*/
  741.     blank_1.value[locy - 1] = -y0;
  742. /*<       locy=lvn+nodplc(loc+16) >*/
  743.     locy = tabinf_1.lvn + nodplc[loc + 15];
  744. /*<       value(locy)=+y0 >*/
  745.     blank_1.value[locy - 1] = y0;
  746. /*<       locy=lvn+nodplc(loc+17) >*/
  747.     locy = tabinf_1.lvn + nodplc[loc + 16];
  748. /*<       value(locy)=+1.0d0 >*/
  749.     blank_1.value[locy - 1] = 1.;
  750. /*<       locy=lvn+nodplc(loc+18) >*/
  751.     locy = tabinf_1.lvn + nodplc[loc + 17];
  752. /*<       value(locy)=+y0 >*/
  753.     blank_1.value[locy - 1] = y0;
  754. /*<       locy=lvn+nodplc(loc+19) >*/
  755.     locy = tabinf_1.lvn + nodplc[loc + 18];
  756. /*<       value(locy)=+1.0d0 >*/
  757.     blank_1.value[locy - 1] = 1.;
  758. /*<       locy=lvn+nodplc(loc+20) >*/
  759.     locy = tabinf_1.lvn + nodplc[loc + 19];
  760. /*<       value(locy)=-1.0d0 >*/
  761.     blank_1.value[locy - 1] = -1.;
  762. /*<       locy=lvn+nodplc(loc+23) >*/
  763.     locy = tabinf_1.lvn + nodplc[loc + 22];
  764. /*<       value(locy)=+1.0d0 >*/
  765.     blank_1.value[locy - 1] = 1.;
  766. /*<       locy=lvn+nodplc(loc+27) >*/
  767.     locy = tabinf_1.lvn + nodplc[loc + 26];
  768. /*<       value(locy)=-1.0d0 >*/
  769.     blank_1.value[locy - 1] = -1.;
  770. /*<       locy=lvn+nodplc(loc+28) >*/
  771.     locy = tabinf_1.lvn + nodplc[loc + 27];
  772. /*<       value(locy)=+1.0d0 >*/
  773.     blank_1.value[locy - 1] = 1.;
  774. /*<       locy=lvn+nodplc(loc+31) >*/
  775.     locy = tabinf_1.lvn + nodplc[loc + 30];
  776. /*<       value(locy)=-y0 >*/
  777.     blank_1.value[locy - 1] = -y0;
  778. /*<       locy=lvn+nodplc(loc+32) >*/
  779.     locy = tabinf_1.lvn + nodplc[loc + 31];
  780. /*<       value(locy)=-y0 >*/
  781.     blank_1.value[locy - 1] = -y0;
  782. /*<       if (mode.ne.1) go to 920 >*/
  783.     if (status_1.mode != 1) {
  784.     goto L920;
  785.     }
  786. /*<       locy=lvn+nodplc(loc+21) >*/
  787.     locy = tabinf_1.lvn + nodplc[loc + 20];
  788. /*<       value(locy)=-1.0d0 >*/
  789.     blank_1.value[locy - 1] = -1.;
  790. /*<       locy=lvn+nodplc(loc+22) >*/
  791.     locy = tabinf_1.lvn + nodplc[loc + 21];
  792. /*<       value(locy)=+1.0d0 >*/
  793.     blank_1.value[locy - 1] = 1.;
  794. /*<       locy=lvn+nodplc(loc+24) >*/
  795.     locy = tabinf_1.lvn + nodplc[loc + 23];
  796. /*<       value(locy)=-(1.0d0-gmin)*z0 >*/
  797.     blank_1.value[locy - 1] = -(1. - knstnt_1.gmin) * z0;
  798. /*<       locy=lvn+nodplc(loc+25) >*/
  799.     locy = tabinf_1.lvn + nodplc[loc + 24];
  800. /*<       value(locy)=-1.0d0 >*/
  801.     blank_1.value[locy - 1] = -1.;
  802. /*<       locy=lvn+nodplc(loc+26) >*/
  803.     locy = tabinf_1.lvn + nodplc[loc + 25];
  804. /*<       value(locy)=+1.0d0 >*/
  805.     blank_1.value[locy - 1] = 1.;
  806. /*<       locy=lvn+nodplc(loc+29) >*/
  807.     locy = tabinf_1.lvn + nodplc[loc + 28];
  808. /*<       value(locy)=-(1.0d0-gmin)*z0 >*/
  809.     blank_1.value[locy - 1] = -(1. - knstnt_1.gmin) * z0;
  810. /*<       go to 950 >*/
  811.     goto L950;
  812. /*<   920 if (initf.ne.5) go to 930 >*/
  813. L920:
  814.     if (status_1.initf != 5) {
  815.     goto L930;
  816.     }
  817. /*<       if (nosolv.ne.0) go to 925 >*/
  818.     if (status_1.nosolv != 0) {
  819.     goto L925;
  820.     }
  821. /*<       value(locv+3)=value(lvnim1+node3)-value(lvnim1+node4) >*/
  822. /*<      1   +value(lvnim1+ibr2)*z0 >*/
  823.     blank_1.value[locv + 2] = blank_1.value[tabinf_1.lvnim1 + node3 - 1] - 
  824.         blank_1.value[tabinf_1.lvnim1 + node4 - 1] + blank_1.value[
  825.         tabinf_1.lvnim1 + ibr2 - 1] * z0;
  826. /*<       value(locv+4)=value(lvnim1+node1)-value(lvnim1+node2) >*/
  827. /*<      1   +value(lvnim1+ibr1)*z0 >*/
  828.     blank_1.value[locv + 3] = blank_1.value[tabinf_1.lvnim1 + node1 - 1] - 
  829.         blank_1.value[tabinf_1.lvnim1 + node2 - 1] + blank_1.value[
  830.         tabinf_1.lvnim1 + ibr1 - 1] * z0;
  831. /*<       go to 930 >*/
  832.     goto L930;
  833. /*<   925 value(locv+3)=value(locv+7)+value(locv+8)*z0 >*/
  834. L925:
  835.     blank_1.value[locv + 2] = blank_1.value[locv + 6] + blank_1.value[locv + 
  836.         7] * z0;
  837. /*<       value(locv+4)=value(locv+5)+value(locv+6)*z0 >*/
  838.     blank_1.value[locv + 3] = blank_1.value[locv + 4] + blank_1.value[locv + 
  839.         5] * z0;
  840. /*<   930 value(lvn+ibr1)=value(locv+3) >*/
  841. L930:
  842.     blank_1.value[tabinf_1.lvn + ibr1 - 1] = blank_1.value[locv + 2];
  843. /*<       value(lvn+ibr2)=value(locv+4) >*/
  844.     blank_1.value[tabinf_1.lvn + ibr2 - 1] = blank_1.value[locv + 3];
  845. /*<   950 loc=nodplc(loc) >*/
  846. L950:
  847.     loc = nodplc[loc - 1];
  848. /*<       go to 910 >*/
  849.     goto L910;
  850.  
  851. /*  initialize nodes */
  852.  
  853. /*<   980 if(mode.ne.1) go to 995 >*/
  854. L980:
  855.     if (status_1.mode != 1) {
  856.     goto L995;
  857.     }
  858. /*<       if(initf.ne.3.and.initf.ne.2) go to 995 >*/
  859.     if (status_1.initf != 3 && status_1.initf != 2) {
  860.     goto L995;
  861.     }
  862. /*<       call sizmem(nsnod,nic) >*/
  863.     sizmem_(&tabinf_1.nsnod, &nic);
  864. /*<       if(nic.eq.0) go to 995 >*/
  865.     if (nic == 0) {
  866.     goto L995;
  867.     }
  868. /*<       call sizmem(icnod,ntest) >*/
  869.     sizmem_(&tabinf_1.icnod, &ntest);
  870. /*<       if(modedc.eq.2.and.ntest.ne.0) go to 995 >*/
  871.     if (status_1.modedc == 2 && ntest != 0) {
  872.     goto L995;
  873.     }
  874. /*<       g=1.0d0 >*/
  875.     g = 1.;
  876. /*<       do 990 i=1,nic >*/
  877.     i_1 = nic;
  878.     for (i = 1; i <= i_1; ++i) {
  879. /*<       locy=lvn+nodplc(nsmat+i) >*/
  880.     locy = tabinf_1.lvn + nodplc[tabinf_1.nsmat + i - 1];
  881. /*<       value(locy)=value(locy)+g >*/
  882.     blank_1.value[locy - 1] += g;
  883. /*<       node=nodplc(nsnod+i) >*/
  884.     node = nodplc[tabinf_1.nsnod + i - 1];
  885. /*<       value(lvn+node)=value(lvn+node)+value(nsval+i)*g >*/
  886.     blank_1.value[tabinf_1.lvn + node - 1] += blank_1.value[
  887.         tabinf_1.nsval + i - 1] * g;
  888. /*<   990 continue >*/
  889. /* L990: */
  890.     }
  891.  
  892. /*  transient initial conditions (uic not specified) */
  893.  
  894. /*<   995 if(mode.ne.1) go to 1000 >*/
  895. L995:
  896.     if (status_1.mode != 1) {
  897.     goto L1000;
  898.     }
  899. /*<       if(modedc.ne.2) go to 1000 >*/
  900.     if (status_1.modedc != 2) {
  901.     goto L1000;
  902.     }
  903. /*<       if(nosolv.ne.0) go to 1000 >*/
  904.     if (status_1.nosolv != 0) {
  905.     goto L1000;
  906.     }
  907. /*<       call sizmem(icnod,nic) >*/
  908.     sizmem_(&tabinf_1.icnod, &nic);
  909. /*<       if(nic.eq.0) go to 1000 >*/
  910.     if (nic == 0) {
  911.     goto L1000;
  912.     }
  913. /*<       g=1.0d0 >*/
  914.     g = 1.;
  915. /*<       do 996 i=1,nic >*/
  916.     i_1 = nic;
  917.     for (i = 1; i <= i_1; ++i) {
  918. /*<       locy=lvn+nodplc(icmat+i) >*/
  919.     locy = tabinf_1.lvn + nodplc[tabinf_1.icmat + i - 1];
  920. /*<       value(locy)=value(locy)+g >*/
  921.     blank_1.value[locy - 1] += g;
  922. /*<       node=nodplc(icnod+i) >*/
  923.     node = nodplc[tabinf_1.icnod + i - 1];
  924. /*<       value(lvn+node)=value(lvn+node)+value(icval+i)*g >*/
  925.     blank_1.value[tabinf_1.lvn + node - 1] += blank_1.value[
  926.         tabinf_1.icval + i - 1] * g;
  927. /*<   996 continue >*/
  928. /* L996: */
  929.     }
  930.  
  931. /*  finished */
  932.  
  933. /*<  1000 call second(t2) >*/
  934. L1000:
  935.     second_(&t2);
  936. /*<       rstats(45)=rstats(45)+t2-t1 >*/
  937.     miscel_1.rstats[44] = miscel_1.rstats[44] + t2 - t1;
  938. /*<       return >*/
  939.     return 0;
  940. /*<       end >*/
  941. } /* load_ */
  942.  
  943. #undef cvalue
  944. #undef nodplc
  945. #undef vind
  946. #undef qcap
  947. #undef find
  948. #undef ccap
  949.  
  950.  
  951.